 namespace svg = "http://www.w3.org/2000/svg"
 
 start = element library { book-element+ }
 author-element =
   [
     svg:svg [
       svg:title [ "A typical author" ]
       svg:ellipse [
         style = "stroke:#000000; fill:#e3e000; stroke-width:2pt;"
         id = "head"
         cx = "280"
         cy = "250"
         rx = "110"
         ry = "130"
       ]
       svg:ellipse [
         style = "stroke:none; fill:#7f7f7f; "
         id = "leftEye"
         cx = "240"
         cy = "225"
         rx = "18"
         ry = "18"
       ]
       svg:ellipse [
         style = "stroke:none; fill:#7f7f7f; "
         id = "rightEye"
         cx = "320"
         cy = "225"
         rx = "18"
         ry = "18"
       ]
       svg:path [
         style = "fill:none;stroke:#7F7F7F; stroke-width:5pt;"
         id = "mouth"
         d = "M 222 280 A 58 48 0 0 0 338 280"
       ]
     ]
   ]
   element author {
     attribute id { text },
     name-element,
     born-element,
     dead-element?
   }
 book-start =
   attribute id { text },
   isbn-element,
   title-element,
   author-element*
 book-end =
   author-element*,
   character-element*,
   attribute available { text }
 book-element = element book { book-start, book-end }
 born-element = element born { text }
 character-element =
   element character {
     attribute id { text },
     name-element,
     born-element,
     qualification-element
   }
 dead-element = element dead { text }
 isbn-element = element isbn { text }
 name-element = element name { text }
 qualification-element = element qualification { text }
 title-element =
   element title {
     attribute xml:lang { text },
     text
   }
